//
// Created by francklinson on 2021/7/25 AT 22:24.
//

//给你一个非负整数 num ，请你返回将它变成 0 所需要的步数。 如果当前数字是偶数，你需要把它除以 2 ；否则，减去 1 。


#include <iostream>

using namespace std;

class Solution {
public:
    int numberOfSteps(int num) {
        int steps = 0;
        while (num != 0) {
            ++steps;
            if (num % 2 == 1)
                --num;
            else
                num /= 2;
        }
        return steps;
    }
};

int main() {
    Solution solution;
    cout << solution.numberOfSteps(25) << endl;
    cout << solution.numberOfSteps(14) << endl;
    return 0;
}

